第2回:OSGi仕様が実装されたEquinoxを試す! (1/3)

Equinox
先取りJava SE 7!

第2回:OSGi仕様が実装されたEquinoxを試す!

著者:チェンジビジョン  近藤 寛喜   2007/8/3
1   2  3  次のページ
Equinoxを体験する

   「第1回:Javaはまだまだこれからだ!」では、Java SE 7で計画されているモジュラリティの向上について解説し、それを実現するOSGiについて触れました。

   今回からはOSGi仕様が実装されたEclipse Equinoxフレームワークを実際に体験していきましょう。一番身近な例としてEclipseを起動し、OSGiフレームワークの稼動の状況をみていきます。

   本連載ではEclipse 3.3を基に解説を進めますが、配布パッケージによっては開発するためのプラグインが足りません。

   以下のWebサイトから「Eclipse for RCP/Plugin Developper」か「Eclipse Classic」をダウンロードしてください。

   上記はどちらともZIP形式で配布されています。今回はWindows用の「Eclipse Classic」をダウンロードして、任意の場所に展開してください。展開されたフォルダにEclipseをコンソールから起動するための実行ファイル「eclipsec.exe」があります。コマンドプロンプトを立ち上げ、展開したフォルダで次のように入力してみましょう。

eclipsec.exe -console

   するとEclipseが立ち上がり、コンソール上には「osgi>」という文字が表示されます。その他の環境でも起動引数に「-console」を追加すると「osgi>」という文字が表示されます。

   これがEquinoxのコンソール画面になります。表示されたEquinoxコンソールで「ss」と入力してみてください。次のような文字列が表示されたはずです。

osgi> ss

Framework is launched.

id      State       Bundle
0       ACTIVE      org.eclipse.osgi_3.3.0.v20070530
1       ACTIVE      org.eclipse.equinox.common_3.3.0.v20070426
2       ACTIVE      org.eclipse.update.configurator_3.2.100.v20070615
3       ACTIVE      org.eclipse.core.runtime_3.3.100.v20070530
4       RESOLVED    com.ibm.icu.source_3.6.1.v20070417
5       ACTIVE      com.ibm.icu_3.6.1.v20070417
6       RESOLVED    com.jcraft.jsch_0.1.31
7       RESOLVED    javax.servlet.jsp.source_2.0.0.v200706191603
8       RESOLVED    javax.servlet.jsp_2.0.0.v200706191603
9       RESOLVED    javax.servlet.source_2.4.0.v200706111738
10      RESOLVED    javax.servlet_2.4.0.v200706111738
11      RESOLVED    org.apache.ant.source_1.7.0.v200706080842
12      RESOLVED    org.apache.ant_1.7.0.v200706080842
13      RESOLVED    org.apache.commons.el.source_1.0.0.v200706111724
(以降、その他のプラグイン一覧)

   これは現在Eclipse上で動いているプラグインの稼動状況を一覧表にしたものです。id列はOSGiフレームワーク上にロードされている各Bundleに対して一意になるように与えられた連番です。Equinoxでは、1Pluginを1Bundleとして扱います。

   Pluginはpluginsフォルダの下にJARか、もしくはフォルダで追加する形式で配置されていますが、その1つ1つがEquinox上ではBundleとして扱われています。Stateという列はBundleの稼動状況を示します。ACTIVEとなっているものは、現在JVMで稼動中のBundleです。RESOLVEDはBundleの依存関係が解決したものです。いつでも稼動させることができます。

   その他のプラグイン一覧で表示されている<<Lazy>>などのStateについては、次回以降で詳しく解説していきます。Bundle列はそれぞれの名称です。

1   2  3  次のページ


株式会社チェンジビジョン 近藤 寛喜
著者プロフィール
株式会社チェンジビジョン  近藤 寛喜
モデリングツールJUDEを開発しているチェンジビジョンにて、プロジェクトの現在を見える化し、状況を共有することで現場で起きている問題を解決するためのツールTRICHORDを開発している。以前からオープンソースのプロジェクトに興味を持ち、特にEclipseプラットフォームに心酔している。最近はゲームの操作感を刷新したWiiリモコンを使って何か面白いUIが作れないか模索している。


INDEX
第2回:OSGi仕様が実装されたEquinoxを試す!
Equinoxを体験する
 Bundleの情報表示
 OSGiフレームワーク
先取りJava SE 7!
第1回Javaはまだまだこれからだ!
第2回OSGi仕様が実装されたEquinoxを試す!
第3回体験!モジュールの動的な追加と削除
第4回Bundleの連携の制御の仕組みを理解しよう!
第5回Javaはどこへ向かうのか?

人気記事トップ10

人気記事ランキングをもっと見る

企画広告も役立つ情報バッチリ! Sponsored

ClickHouse Cloudが実現した広告運用SaaS「ATOM」のデータ基盤革新、パフォーマンスを向上しながら、運用負荷とコストを削減 11月11日 6:20 AIで開発が加速する時代、品質保証はどう変わる? Tricentisが示すAIエージェント活用の実像 11月9日 6:45 悪用までの猶予が「1分」に迫るフロンティアAI時代に開発と本番を貫く脆弱性管理が必要 10月29日 8:30 欧州CRA対応とSBOM運用。AI生成コードのOSS混入問題の対策とは ――スニペット単位で検出する「FossID」「Insignary Clarity」によるSBOM運用 9月16日 6:40 PostgreSQLからTiDBへ、稼働中SaaSで進める段階的DB移行の実践と再設計への展望 9月7日 6:30 機能安全開発におけるGoogleTestの活用を支援!「Parasoft C/C++test CT」で実現する効率化&AI連携 4月14日 6:30 【CNDW2025】Grafanaが明かす「オブザーバビリティの哲学」ー最小限の労力で実用的なインサイトを得るには 1月23日 6:30 【CNDW2025】プロダクト急増に備える基盤刷新 ーウェルスナビがECSからEKSへの移行で得た知見とは 1月15日 6:30 【CNDW2025】250環境を5人で運用、構築時間は30分に ーKINTOテクノロジーズが語るインフラ基盤組織の作り方 2025年12月18日 6:30 新たな自動化で熱視線! AIエージェントの「推論能力」を支える2つのコンポーネントとは? 2025年11月28日 6:30